
package sys.donto.atestado;

import java.util.List;
import org.hibernate.criterion.MatchMode;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;
import sys.donto.util.GenericDAO;
import sys.donto.util.HibernateUtil;

/**
 *
 * @author JOABB
 */
public class AtestadoDAO extends GenericDAO<Atestado>{
   
    public AtestadoDAO() {
        super(Atestado.class);//Referencia a classe pai, que no caso é Atestado.
    }
    public List <Atestado> pesquisaDescricao(String Descricao){
        setSessao(HibernateUtil.getSessionFactory().openSession());
        setTransacao(getSessao().beginTransaction());
        
        List <Atestado> atestados = (List<Atestado>) getSessao().createCriteria(Atestado.class).
                add(Restrictions.ilike("descricao", Descricao, MatchMode.ANYWHERE)).
                addOrder(Order.asc("descricao")).list();
        
        getSessao().close();
        return atestados;
    }
    
    public Atestado pesquisaId(int id){
        setSessao(HibernateUtil.getSessionFactory().openSession());
        setTransacao(getSessao().beginTransaction());
        
        Atestado atestado = (Atestado) getSessao().createCriteria(Atestado.class).
                add(Restrictions.eq("id", id)).uniqueResult();
        
        getSessao().close();
        return atestado;
    }
    
    public void salvar(Atestado atest){
        if(atest.getId()==0){
            adicionar(atest);
        } else {
            atualizar(atest);
        }
    }
    
}
